package com.future.service;

import com.future.domain.Result;
import org.apache.ibatis.io.ResolverUtil;

import java.util.List;

public interface NotificationService {
    /**
     * 通知点赞或收藏
     */
    void sendLike(Long receiverId, Long relatedId,String content);
    /**
     * 通知评论点赞
     */
    void sendMark(Long receiverId, Long relatedId, String type);
    /**
     * 通知用户评论
     * @param receiverId
     * @param relatedId
     * @param content
     */
    void sendComment(Integer targetTypeId,Long receiverId,Long relatedId,String content);
    /**
     * 通知心理调查问卷
     */
    void sendQuestionnaire(List<Long> receiverId,Long relatedId,String content);

    /**
     * 公告
     */
    void sendAnnouncement(Long announcementId, String content, List<Long> userIds);
    /**
     * 获取点赞通知
     */
     Result getLikeNotification(Integer pageNum, Integer pageSize);
     Result getCommentNotification(Integer pageNum, Integer pageSize);
     Result getMarkNotification(Integer pageNum, Integer pageSize);
    Result getQuestionNotification(Integer pageNum, Integer pageSize);
    /**
     * 根据类型获取系统未读通知数
     */
    Result getUnreadCountByType(String notificationType);
    /**
     * 根据消息id删除消息
     */
    Result delectNoticication(String notificationId);
}
